package flash.utils
{
import flash.interfaces.ISafeGlobalOwner;

public class SafeGlobalOwner implements ISafeGlobalOwner
{
	private var m_global:SafeGlobalProxy;
	/**
	 *
	 */
	public function SafeGlobalOwner()
	{
	}
//==================================================================================================
// public
//==================================================================================================
	public function dispose():void
	{
		
	}
	/**
	 * 获取SafeGlobal字典
	 */
	public function get sg():SafeGlobalProxy
	{
		return m_global;
	}
	/**
	 * 返回safeGlobal次级对象
	 */
	public function sgs(obKey:* = null):*
	{
		if (m_global != null)
		{
			return m_global[obKey];
		}
		return null;
	}
	/**
	 * 设置SafeGlobal字典
	 * 只能一次性设置
	 */
	public function set sg(value:SafeGlobalProxy):void
	{
		if (m_global != null)
		{
			throw Error("Repeated set");
		}
		else if (null == m_global)
		{
			m_global = value;
			onGlobalInited();
		}
	}
	/**
	 * 当初始完成时
	 */
	public function onGlobalInited():void
	{
		
	}
}
}